Показано с 1 по 8 из 8

Тема: [MV] Окончания слов в тексте

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Супер-модератор Аватар для dirge
    Информация о пользователе
    Регистрация
    25.02.2013
    Сообщений
    924
    Репутация: 79 Добавить или отнять репутацию

    По умолчанию [MV] Окончания слов в тексте

    Окончания слов в тексте
    Автор: dirge
    Описание: Плагин предназначен для замены окончаний в тексте через команду "показать текст", в зависимости от пола персонажа, чтобы избежать бесконечных ветвлений в ивентах.
    Подробная инструкция по использованию находится в хелпе плагина.

    Пока только для команды "показать текст", может позже будет и для команды выбора.

    Установка стандартная, как и у всех остальных плагинов. Название файла плагина неважно.
    Спойлер плагин:
    Код:
    //=============================================================================
    // TextEndings
    //=============================================================================
    
    var Imported = Imported || {};
    Imported.de_TextEndings = true;
    
    /*:
     * @plugindesc v1.0 Позволяет устанавливать окончания для слов.
     * <de_TextEndings>
     * @author dirge
     *
     * @param Количество возможных полов персонажа
     * @desc Запишите количество полов
     * Default: 2
     * @default 2
     *
     * @param Id переменной
     * @desc Запишите id переменной которая будет отвечать за пол персонажа
     * Default: 0
     * @default 0
     *
     * @param Вариант окончания №1
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №2
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №3
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №4
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №5
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №6
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №7
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №8
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №9
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @param Вариант окончания №10
     * @desc Запишите окончания через запятую, но не больше чем доступно полов 
     *
     * @help 
     * --------------------------------------------------------------------------------
     * Версия 1.0
     * --------------------------------------------------------------------------------
     * Плагин позволяет устанавливать окончания словам в текстах через команду 
     * показать текст, в зависимости от пола главного героя.
     * Управлять полом ГГ нужно через переменную, айди которой выставлен
     * в настройках плагина. Значения самой переменной устанавливайте
     * от 0 и до количества возможных полов персонажа -1, из-за 
     * отсчета с 0.
     * Предварительно заполните варианты окончаний. 
     * Заполняются они через запятую, но окончаний не должно быть больше
     * чем количество полов персонажа, которое определяется в настройках.
     * Пример заполнения: -,а
     * Для пустого окончания используйте дефис, он автоматически
     * заменится на пустое место в тексте. В примере,
     * дефис = 0 значению переменной пола персонажа, в свою очередь 
     * 'a' = 1, итого мы определили окончания для двух вероятных полов
     * персонажа.
     * Использование в тексте \gr[n]
     * где n - номер варианта окончания.
     * 
     */
    
    (function() {
    	
    	var parameters = $plugins.filter(function(p) { return p.description.contains('<de_TextEndings>'); })[0].parameters;
    	
    	var paramGenderNumber = Number(parameters['Количество полов'] || 2);
    	var paramVariableId = Number(parameters['Id переменной'] || 0);
    	var paramEndingArray = []
    	
    	for(var i = 1;i <= 10;i++){
    		par = String(parameters['Вариант окончания №'+i]);
    		par = par.replace(/-/g, '')
    		splitArray = par.split(',');
    		paramEndingArray[i] = splitArray
    	}
    
    	Window_Base.prototype.convertTextEnding = function(text) {
    		
    		text = text.replace(/\gr\[(\d+)\]/gi, function() {
    			for(var i = 0;i<paramGenderNumber;i++){
    				if ($gameVariables.value(paramVariableId)==i){
    					return paramEndingArray[parseInt(arguments[1])][i]
    					break
    				}
    			}
    		}.bind(this));
    		
    		return text;
    	};
    
    
    	Window_Base_convertEscapeCharacters_Alias = Window_Base.prototype.convertEscapeCharacters;
    	Window_Base.prototype.convertEscapeCharacters = function(text) {
    		text = Window_Base_convertEscapeCharacters_Alias.call(this, text);
    		text = this.convertTextEnding(text);
    		return text;
    	};
    
    })();

    зеркало на pastebin

    Пока всего 10 вариантов, если кому не хватит, скажите, сделаю больше, ну, это если вообще кто-то будет его использовать)
    Последний раз редактировалось dirge; 30.12.2016 в 21:06.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Метки этой темы

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
[MV] Окончания слов в тексте